package com.xinzhi.model;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author laohan
 * @since 2024-01-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="PackageSkus对象", description="")
public class PackageSkus implements Serializable {

private static final long serialVersionUID=1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    private String uuid;

    @ApiModelProperty(value = "package id")
    private Integer packageAssetId;

    @ApiModelProperty(value = "当前归属用户id")
    private Integer userId;

    @ApiModelProperty(value = "标题")
    private String title;

    @ApiModelProperty(value = "编号")
    private String number;

    @ApiModelProperty(value = "封面")
    private String thumb;

    @ApiModelProperty(value = "人民币价格")
    private Integer moneyPrice;

    @ApiModelProperty(value = "积分价格")
    private Integer scorePrice;

    @ApiModelProperty(value = "数量")
    private Integer total;

    @ApiModelProperty(value = "奖品类型, 1为自定义实物，2为绑定商城商品 3为平台虚拟资产  4为无任何奖品")
    private Integer skuType;

    @ApiModelProperty(value = "是否可以返售给平台 0为否 1为是")
    private Boolean isReturnSaleable;

    @ApiModelProperty(value = "是否可以转售")
    private Boolean isResaleable;

    @ApiModelProperty(value = "是否可以赠送")
    private Boolean isGiveable;

    @ApiModelProperty(value = "支付订单id")
    private Integer payOrderId;

    @ApiModelProperty(value = "提取订单id")
    private Integer pickOrderId;

    @ApiModelProperty(value = "房间id，部分活动有此字段")
    private Integer roomId;

    @ApiModelProperty(value = "抽出的序号数组，可能多次抽出")
    private String openIndexs;

    @ApiModelProperty(value = "其它选项")
    private String options;

    @ApiModelProperty(value = "返售时间")
    private Date returnSaledAt;

    @ApiModelProperty(value = "提取时间")
    private Date pickedAt;

    @ApiModelProperty(value = "转售时间")
    private Date resaledAt;

    @ApiModelProperty(value = "返售红包")
    private Integer returnRedpack;

    @ApiModelProperty(value = "返售积分")
    private Integer returnScore;

    @ApiModelProperty(value = "返售人民币(原路返回)")
    private Integer returnMoney;

    @ApiModelProperty(value = "1为待处理  2为已发货  3为已返售  4为已转售 5为转售中")
    private Integer status;

    private Date deletedAt;

    private Date createdAt;

    private Date updatedAt;

    @ApiModelProperty(value = "活动标题")
    private String nodeTitle;

    @ApiModelProperty(value = "活动人民币价格")
    private Integer nodeMoneyPrice;

    @ApiModelProperty(value = "活动积分价格")
    private Integer nodeScorePrice;

    @ApiModelProperty(value = "当sku_type为2时，绑定的虚拟资产")
    private String assets;

    @ApiModelProperty(value = "当sku_type为1时, 绑定的商品id")
    private Integer productId;

    @ApiModelProperty(value = "短id")
    private String sid;

    @ApiModelProperty(value = "来源 1为开盒获得  2为转售获得")
    private Integer sourceType;

    @ApiModelProperty(value = "开启序号，首次开启")
    private Integer openIndex;

    @ApiModelProperty(value = "活动id，盲盒id、一番赏id、抽奖id、扭蛋机id")
    private Integer activityId;

    @ApiModelProperty(value = "对应活动类型, seckill groupon 等")
    private String activityType;

    @ApiModelProperty(value = "活动uuid")
    private String activityUuid;

    @ApiModelProperty(value = "活动id，盲盒id、一番赏id、抽奖id、扭蛋机id")
    private Integer nodeId;

    @ApiModelProperty(value = "对应实体类型,  product box yifanshang lottery egg_lottery")
    private String nodeType;

    @ApiModelProperty(value = "活动uuid")
    private String nodeUuid;

    @ApiModelProperty(value = "是否特殊sku，如隐藏款 1为是")
    private Boolean isSpecialSku;

    @ApiModelProperty(value = "活动赠送")
    private String reward;

    @ApiModelProperty(value = "供应商名称")
    private String supplier;

    @ApiModelProperty(value = "转售自的package sku id")
    private Integer fromPackageSkuId;

    @ApiModelProperty(value = "预售日期，到了此日期后才可以选择发货")
    private Date presellDate;

    @ApiModelProperty(value = "基础sku的id")
    private Integer skuId;

    @ApiModelProperty(value = "兑换记录的id")
    private Integer exchangeRecordId;

    @ApiModelProperty(value = "转售id")
    private Integer resaleId;

    @ApiModelProperty(value = "需要消耗欧气值")
    private Integer useLuckyScore;

    @ApiModelProperty(value = "加入保险箱的时间")
    private Date lockedAt;

    @ApiModelProperty(value = "sku的等级")
    private Integer skuLevel;

    @ApiModelProperty(value = "总免单数量")
    private Integer freeOrderTotal;


}
